Page({
  data: {
    attachment: [],
    // 选中房屋信息
    houseInfo: '',
    // 选中维修项目
    repairInfo: '',
    // 预约上门时间
    appointTime: '',
    // 时间选择器默认显示时间
    currentDate: new Date().getTime(),
    // 控制选择房屋弹出层是否显示
    houseLayerVisible: false,
    // 控制选择维修项目弹出层是否显示
    repairLayerVisible: false,
    // 控制上门维修时间选择弹出层显示
    dateLayerVisible: false,
    // 选择维修房屋数据（调用后台接口获取）
    houseList: [], // 房屋列表
    // 选择维修项目（调用后台接口获取）
    repairItem: [],
    // 报修问题描述图片列表
    fileList: [
      { url: '/repair_pkg/static/uploads/attachment.jpg' },
      { url: '/repair_pkg/static/uploads/attachment.jpg' },
    ],

  },
  img(ev) {
    console.log(ev.detail.file);
    const { file } = ev.detail
    // 调用接口上传至服务器
    wx.uploadFile({
      url: wx.http.baseURL + '/upload',
      filePath: file.url,
      name: 'file',
      header: {
        Authorization: getApp().token,
      },
      success: (res) => {
        // 转换json数据
        const data = JSON.parse(res.data)
        // 上传完成后需要更新
        const { attachment } = this.data
        attachment.push({ ...data.data })
        // 渲染数据
        this.setData({ attachment })
      }
    })
  },
  onLoad() {
    // 获取房屋列表
    this.getHouseList()
    // 获取维修项目
    this.getRepairItem()
  },
  // 维修项目
  async getRepairItem() {
    const { data: repairItem } = await wx.http.get('/repairItem')
    console.log(repairItem);
    this.setData({
      repairItem
    })
  },
  // 房屋列表
  async getHouseList() {
    // 请求数据接口
    const { data: houseList } = await wx.http.get('/house')
    console.log(houseList);
    // 数据渲染
    this.setData({ houseList })
  },
  // 选中的房屋信息
  selectHouse(e) {
    console.log('选中的房屋信息:', e)
    const { name: houseInfo } = e.detail
    this.setData({
      houseInfo
    })
  },
  // 选择维修项目
  selectRepairItem(e) {
    const { name: repairInfo } = e.detail
    this.setData({
      repairInfo
    })
  },
  // 选择维修上门时间
  selectTime(e) {
    console.log(e.detail)
    this.setData({
      dateLayerVisible: false, // 关闭选择时间弹层
      appointTime: wx.utils.formatTime(e.detail)
    })
  },
  openHouseLayer() {
    this.setData({ houseLayerVisible: true })
  },
  closeHouseLayer() {
    this.setData({ houseLayerVisible: false })
  },
  openRepairLayer() {
    this.setData({ repairLayerVisible: true })
  },
  closeRepairLayer() {
    this.setData({
      repairLayerVisible: false,
    })
  },

  openDateLayer() {
    this.setData({ dateLayerVisible: true })
  },
  closeDateLayer() {
    this.setData({ dateLayerVisible: false })
  },
  goList() {
    wx.reLaunch({
      url: '/repair_pkg/pages/list/index',
    })
  },
})
